package com.xidian.zhiancloud.ticketTemplate.ticketContentRisk;

import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;

import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;

public class HoistJson extends TemplateJson{
    public static JsonNode HoistJson() {
        ObjectMapper mapper = new ObjectMapper();
        HashMap<String, Object> t1 = new LinkedHashMap<>();
//        t1.put("location_id", getFiled("int", 1, new String[]{}));              // 吊装地点
//        t1.put("tool_name", getFiled("string", 0, new String[]{}));             // 吊装工具名称
//        t1.put("work_pass_num", getFiled("string", 0, new String[]{}));         // 作业证编号
//        t1.put("worker_id", getFiled("int", 1, new String[]{}));                // 吊装人员
//        t1.put("worker_special_num", getFiled("string", 0, new String[]{}));    // 吊装人员的特殊工种作业证号
//        t1.put("guardian_id", getFiled("string", 1, new String[]{}));           // 监护人
//        t1.put("commander_id", getFiled("int", 1, new String[]{}));             // 吊装指挥
//        t1.put("commander_special_num", getFiled("string", 0, new String[]{})); // 吊装指挥的特殊工种作业证号
//        t1.put("goods_quality", getFiled("string", 0, new String[]{}));         // 起吊重物质量
//        t1.put("work_content", getFiled("string", 0, new String[]{}));          // 吊装内容
//        t1.put("time_start_actual", getFiled("string", 0, new String[]{}));     // 实际作业开始时间（**年**月**日**时**分）
//        t1.put("time_end_actual", getFiled("string", 0, new String[]{}));       // 实际作业结束时间
//        t1.put("hazard_identify1", getFiled("int", 0, new String[]{}));         // 危害辨识1
//        t1.put("hazard_identify1_sign", getFiled("string", 0, new String[]{})); // 危害辨识1，所涉及的属地车间安全员签字
//        t1.put("hazard_identify2", getFiled("int", 0, new String[]{}));         // 危害辨识2
//        t1.put("hazard_identify2_sign", getFiled("string", 0, new String[]{})); // 危害辨识2，所涉及的属地车间安全员签字
//        t1.put("measure1_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure2_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure3_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure4_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure5_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure6_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure7_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure8_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure9_sign", getFiled("string", 0, new String[]{}));                     // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure10_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure11_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure12_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure13_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure14_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure15_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure16_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure17_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure18_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure19_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure20_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure21_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure22_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure23_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure24_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure25_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure26_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure27_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure28_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure29_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure30_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure31_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure32_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure33_sign", getFiled("string", 0, new String[]{}));                    // 作业单位现场负责人签字，不涉及的画"/"
//        t1.put("measure33_content",getFiled("string",0,new String[]{}));                    // 其他安全措施
//        t1.put("measure33_creator_sign",getFiled("string",0,new String[]{}));               // 其他安全措施编制人签字
//        t1.put("safe_educator_sign", getFiled("string", 0, new String[]{}));                // 安全教育人签字
//        t1.put("local_safe_sign", getFiled("string", 0, new String[]{}));                   // 生产单位安全负责人签字
//        t1.put("local_sign", getFiled("string", 0, new String[]{}));                        // 生产单位负责人签字
//        t1.put("work_safe_sign", getFiled("string", 0, new String[]{}));                    // 作业单位安全负责人签字
//        t1.put("work_sign", getFiled("string", 0, new String[]{}));                         // 作业单位负责人签字
//        t1.put("approval_opinion", getFiled("string", 0, new String[]{}));                  // 审批部门意见
//        t1.put("approval_sign", getFiled("string", 0, new String[]{}));                     // 审批部门签字
//        t1.put("approval_sign_time", getFiled("string", 0, new String[]{}));                // 审批部门签字时间
        List<HashMap<String, Object>> t2 = new LinkedList<>();
        HashMap<String,Object> m1 = new LinkedHashMap<>();
        m1.put("吊装质量大于等于40t的重物和土建工程主体结构；吊装物体虽不足40t，但形状复杂、刚度小、长径比大、精密贵重，作业条件特殊，已编制吊装作业方案，且经作业主管部门和安全管理部门审查，报主管（副总经理/总工程师批准）",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m2 = new LinkedHashMap<>();
        m2.put("指派专人监护，并监守岗位，非作业人员禁止入内",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m3 = new LinkedHashMap<>();
        m3.put("作业人员已按规定佩戴防护器具和个体防护用品",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m4 = new LinkedHashMap<>();
        m4.put("已与分厂（车间）负责人取得联系，建立联系信号",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m5 = new LinkedHashMap<>();
        m5.put("已在吊装现场设置安全警戒标志，无关人员不许进入作业现场",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m6 = new LinkedHashMap<>();
        m6.put("夜间作业采用足够的照明",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m7 = new LinkedHashMap<>();
        m7.put("室外作业遇到（大雪/暴雨/大雾/六级以上大风），已停止作业",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m8 = new LinkedHashMap<>();
        m8.put("检查起重吊装设备、钢丝绳、缆风绳、链条、吊钩等各种机具，保证安全可靠",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m9 = new LinkedHashMap<>();
        m9.put("明确分工、坚守岗位，并按规定的联络信号，统一指挥",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m10 = new LinkedHashMap<>();
        m10.put("将建筑物、构筑物作为锚点，需经工程处审查核算并批准",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m11 = new LinkedHashMap<>();
        m11.put("吊装绳索、缆风绳、拖拉绳等避免同带电线路接触，并保持安全距离",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m12 = new LinkedHashMap<>();
        m12.put("人员随同吊装重物或吊装机械升降，应采取可靠的安全措施，并经过现场指挥人员批准",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m13 = new LinkedHashMap<>();
        m13.put("利用管道、管架、电杆、机电设备等作吊装锚点，不准吊装",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m14 = new LinkedHashMap<>();
        m14.put("悬吊重物下方站人、通行和工作，不准吊装",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m15 = new LinkedHashMap<>();
        m15.put("超负荷或重物质量不明，不准吊装",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m16 = new LinkedHashMap<>();
        m16.put("斜拉重物、重物埋在地下或重物坚固不牢，绳打结、绳不齐，不准吊装",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m17 = new LinkedHashMap<>();
        m17.put("棱角重物没有衬垫措施，不准吊装",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m18 = new LinkedHashMap<>();
        m18.put("安全装置失灵，不准吊装",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m19 = new LinkedHashMap<>();
        m19.put("用定型起重吊装机械（履带吊车/轮胎吊车/矫式吊车等）进行吊装作业，遵守该定型机械的操作规程",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m20 = new LinkedHashMap<>();
        m20.put("作业过程中应先用低高度、短行程试吊",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m21 = new LinkedHashMap<>();
        m21.put("作业现场出现危险品泄漏，立即停止作业，撤离人员",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m22 = new LinkedHashMap<>();
        m22.put("作业完成后现场杂物已清理",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m23 = new LinkedHashMap<>();
        m23.put("吊装作业人员持有法定的有效的证件",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m24 = new LinkedHashMap<>();
        m24.put("地下通讯电（光）缆、局域网络电（光）缆、排水沟的盖板，承重吊装机械的负重量已确认，保护措施已落实",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m25 = new LinkedHashMap<>();
        m25.put("起吊物的质量（ ）t，经确认，在吊装机械的承重范围",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m26 = new LinkedHashMap<>();
        m26.put("在吊装高度的管线、电缆桥架已做好防护措施",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m27 = new LinkedHashMap<>();
        m27.put("作业现场围栏、警戒线、警告牌、夜间警示灯已按要求设置",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m28 = new LinkedHashMap<>();
        m28.put("作业高度和转臂范围内，无架空线路",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m29 = new LinkedHashMap<>();
        m29.put("人员出入口和撤离安全措施已落实：A.指示牌；B.指示灯",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m30 = new LinkedHashMap<>();
        m30.put("在爆炸危险生产区域内作业，机动车排气管已装火星熄灭器",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m31 = new LinkedHashMap<>();
        m31.put("现场夜间有充足照明：36V、24V、12V防水型灯；36V、24V、12V防爆型灯",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m32 = new LinkedHashMap<>();
        m32.put("作业人员已佩戴防护器具",getFiled("确认人","String",0,new String[]{}));
        HashMap<String,Object> m33 = new LinkedHashMap<>();
        m33.put("其他安全措施： ",getFiled("确认人","String",0,new String[]{}));
        t2.add(m1);
        t2.add(m2);
        t2.add(m3);
        t2.add(m4);
        t2.add(m5);
        t2.add(m6);
        t2.add(m7);
        t2.add(m8);
        t2.add(m9);
        t2.add(m10);
        t2.add(m11);
        t2.add(m12);
        t2.add(m13);
        t2.add(m14);
        t2.add(m15);
        t2.add(m16);
        t2.add(m17);
        t2.add(m18);
        t2.add(m19);
        t2.add(m20);
        t2.add(m21);
        t2.add(m22);
        t2.add(m23);
        t2.add(m24);
        t2.add(m25);
        t2.add(m26);
        t2.add(m27);
        t2.add(m28);
        t2.add(m29);
        t2.add(m30);
        t2.add(m31);
        t2.add(m32);
        t2.add(m33);

        t1.put("safe_measure",getFiled("安全措施","string",0, t2));

        JsonNode jsonNode = mapper.valueToTree(t1);
        System.out.println(jsonNode);
        return jsonNode;
    }

}
